// default package
// Generated 28 Jul, 2014 8:04:07 PM by Hibernate Tools 3.4.0.CR1
package com.galaxy.bean;

import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * PaypalSettlementReportRow generated by hbm2java
 */
@Entity
@Table(name = "paypal_settlement_report_row", catalog = "magento")
public class PaypalSettlementReportRow implements java.io.Serializable {

	private Integer rowId;
	private PaypalSettlementReport paypalSettlementReport;
	private String transactionId;
	private String invoiceId;
	private String paypalReferenceId;
	private String paypalReferenceIdType;
	private String transactionEventCode;
	private Date transactionInitiationDate;
	private Date transactionCompletionDate;
	private String transactionDebitOrCredit;
	private BigDecimal grossTransactionAmount;
	private String grossTransactionCurrency;
	private String feeDebitOrCredit;
	private BigDecimal feeAmount;
	private String feeCurrency;
	private String customField;
	private String consumerId;

	public PaypalSettlementReportRow() {
	}

	public PaypalSettlementReportRow(
			PaypalSettlementReport paypalSettlementReport,
			String transactionDebitOrCredit, BigDecimal grossTransactionAmount,
			BigDecimal feeAmount) {
		this.paypalSettlementReport = paypalSettlementReport;
		this.transactionDebitOrCredit = transactionDebitOrCredit;
		this.grossTransactionAmount = grossTransactionAmount;
		this.feeAmount = feeAmount;
	}

	public PaypalSettlementReportRow(
			PaypalSettlementReport paypalSettlementReport,
			String transactionId, String invoiceId, String paypalReferenceId,
			String paypalReferenceIdType, String transactionEventCode,
			Date transactionInitiationDate, Date transactionCompletionDate,
			String transactionDebitOrCredit, BigDecimal grossTransactionAmount,
			String grossTransactionCurrency, String feeDebitOrCredit,
			BigDecimal feeAmount, String feeCurrency, String customField,
			String consumerId) {
		this.paypalSettlementReport = paypalSettlementReport;
		this.transactionId = transactionId;
		this.invoiceId = invoiceId;
		this.paypalReferenceId = paypalReferenceId;
		this.paypalReferenceIdType = paypalReferenceIdType;
		this.transactionEventCode = transactionEventCode;
		this.transactionInitiationDate = transactionInitiationDate;
		this.transactionCompletionDate = transactionCompletionDate;
		this.transactionDebitOrCredit = transactionDebitOrCredit;
		this.grossTransactionAmount = grossTransactionAmount;
		this.grossTransactionCurrency = grossTransactionCurrency;
		this.feeDebitOrCredit = feeDebitOrCredit;
		this.feeAmount = feeAmount;
		this.feeCurrency = feeCurrency;
		this.customField = customField;
		this.consumerId = consumerId;
	}

	@Id
	@GeneratedValue(strategy = IDENTITY)
	@Column(name = "row_id", unique = true, nullable = false)
	public Integer getRowId() {
		return this.rowId;
	}

	public void setRowId(Integer rowId) {
		this.rowId = rowId;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "report_id", nullable = false)
	public PaypalSettlementReport getPaypalSettlementReport() {
		return this.paypalSettlementReport;
	}

	public void setPaypalSettlementReport(
			PaypalSettlementReport paypalSettlementReport) {
		this.paypalSettlementReport = paypalSettlementReport;
	}

	@Column(name = "transaction_id", length = 19)
	public String getTransactionId() {
		return this.transactionId;
	}

	public void setTransactionId(String transactionId) {
		this.transactionId = transactionId;
	}

	@Column(name = "invoice_id", length = 127)
	public String getInvoiceId() {
		return this.invoiceId;
	}

	public void setInvoiceId(String invoiceId) {
		this.invoiceId = invoiceId;
	}

	@Column(name = "paypal_reference_id", length = 19)
	public String getPaypalReferenceId() {
		return this.paypalReferenceId;
	}

	public void setPaypalReferenceId(String paypalReferenceId) {
		this.paypalReferenceId = paypalReferenceId;
	}

	@Column(name = "paypal_reference_id_type", length = 3)
	public String getPaypalReferenceIdType() {
		return this.paypalReferenceIdType;
	}

	public void setPaypalReferenceIdType(String paypalReferenceIdType) {
		this.paypalReferenceIdType = paypalReferenceIdType;
	}

	@Column(name = "transaction_event_code", length = 5)
	public String getTransactionEventCode() {
		return this.transactionEventCode;
	}

	public void setTransactionEventCode(String transactionEventCode) {
		this.transactionEventCode = transactionEventCode;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "transaction_initiation_date", length = 19)
	public Date getTransactionInitiationDate() {
		return this.transactionInitiationDate;
	}

	public void setTransactionInitiationDate(Date transactionInitiationDate) {
		this.transactionInitiationDate = transactionInitiationDate;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "transaction_completion_date", length = 19)
	public Date getTransactionCompletionDate() {
		return this.transactionCompletionDate;
	}

	public void setTransactionCompletionDate(Date transactionCompletionDate) {
		this.transactionCompletionDate = transactionCompletionDate;
	}

	@Column(name = "transaction_debit_or_credit", nullable = false, length = 2)
	public String getTransactionDebitOrCredit() {
		return this.transactionDebitOrCredit;
	}

	public void setTransactionDebitOrCredit(String transactionDebitOrCredit) {
		this.transactionDebitOrCredit = transactionDebitOrCredit;
	}

	@Column(name = "gross_transaction_amount", nullable = false, precision = 20, scale = 6)
	public BigDecimal getGrossTransactionAmount() {
		return this.grossTransactionAmount;
	}

	public void setGrossTransactionAmount(BigDecimal grossTransactionAmount) {
		this.grossTransactionAmount = grossTransactionAmount;
	}

	@Column(name = "gross_transaction_currency", length = 3)
	public String getGrossTransactionCurrency() {
		return this.grossTransactionCurrency;
	}

	public void setGrossTransactionCurrency(String grossTransactionCurrency) {
		this.grossTransactionCurrency = grossTransactionCurrency;
	}

	@Column(name = "fee_debit_or_credit", length = 2)
	public String getFeeDebitOrCredit() {
		return this.feeDebitOrCredit;
	}

	public void setFeeDebitOrCredit(String feeDebitOrCredit) {
		this.feeDebitOrCredit = feeDebitOrCredit;
	}

	@Column(name = "fee_amount", nullable = false, precision = 20, scale = 6)
	public BigDecimal getFeeAmount() {
		return this.feeAmount;
	}

	public void setFeeAmount(BigDecimal feeAmount) {
		this.feeAmount = feeAmount;
	}

	@Column(name = "fee_currency", length = 3)
	public String getFeeCurrency() {
		return this.feeCurrency;
	}

	public void setFeeCurrency(String feeCurrency) {
		this.feeCurrency = feeCurrency;
	}

	@Column(name = "custom_field")
	public String getCustomField() {
		return this.customField;
	}

	public void setCustomField(String customField) {
		this.customField = customField;
	}

	@Column(name = "consumer_id", length = 127)
	public String getConsumerId() {
		return this.consumerId;
	}

	public void setConsumerId(String consumerId) {
		this.consumerId = consumerId;
	}

}
